
#include "my485.h"

const int RXMODE = 0;
const int TXMODE = 1;

const uint16_t CTRL485s = GPIO_Pin_2 | GPIO_Pin_3;
const uint16_t CTRL485[2] = {GPIO_Pin_2, GPIO_Pin_3};

void init485(void) {
    GPIO_InitTypeDef gpio;
    RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOC, ENABLE);
    GPIO_StructInit(&gpio);
    gpio.GPIO_Mode = GPIO_Mode_OUT;
    gpio.GPIO_Speed = GPIO_Speed_50MHz;
    gpio.GPIO_Pin = CTRL485s;
    
    GPIO_Init(GPIOC, &gpio);
    
    set485(0, RXMODE);
    set485(1, RXMODE);
    
}

void set485(int PORT485x, int MODE485){
    if (MODE485 == TXMODE){
        GPIO_SetBits(GPIOC, CTRL485[PORT485x]);
    } else {
        GPIO_ResetBits(GPIOC, CTRL485[PORT485x]);
    }
}



